home *** CD-ROM | disk | FTP | other *** search
/ The Programmer Disk / The Programmer Disk (Microforum).iso / xpro / qb2 / pro15 / grafpas.asm < prev    next >
Encoding:
Assembly Source File  |  1990-08-20  |  12.0 KB  |  1,056 lines

  1. ;
  2. ;Assembly language interface file for QuickPASCAL/Turbo PASCAL
  3. ;
  4.  
  5.     DOSSEG
  6.  
  7.     .MODEL    TPascal
  8.  
  9.     .DATA
  10.  
  11.     .CODE
  12.  
  13.     PUBLIC    ClearScreen
  14.  
  15. ClearScreen    PROC    FAR
  16.  
  17.     MOV    AX,0EE00H
  18.     INT    10H
  19.     RET
  20.  
  21. ClearScreen    ENDP
  22.  
  23.  
  24.     PUBLIC    ColorEnable
  25.  
  26. ColorEnable    PROC    FAR    Action: WORD
  27.  
  28.     MOV    AX,0EE01H
  29.     MOV    BX,Action
  30.     INT    10H
  31.     RET
  32.  
  33. ColorEnable    ENDP
  34.  
  35.  
  36.     PUBLIC    SetColor
  37.  
  38. SetColor    PROC    FAR    ColorType: WORD, Color: WORD
  39.  
  40.     MOV    AX,0EE02H
  41.     MOV    BX,ColorType
  42.     MOV    CX,Color
  43.     INT    10H
  44.     RET
  45.  
  46. SetColor    ENDP
  47.  
  48.  
  49.     PUBLIC    GetColor
  50.  
  51. GetColor    PROC    FAR    ColorType: WORD
  52.  
  53.     MOV    AX,0EE03H
  54.     MOV    BX,ColorType
  55.     INT    10H
  56.     MOV    AX,CX
  57.     RET
  58.  
  59. GetColor    ENDP
  60.  
  61.  
  62.     PUBLIC    SetAspect
  63.  
  64. SetAspect    PROC    FAR    XAspect: WORD, YAspect: WORD
  65.  
  66.     MOV    AX,0EE04H
  67.     MOV    BX,XAspect
  68.     MOV    CX,YAspect
  69.     INT    10H
  70.     RET
  71.  
  72. SetAspect    ENDP
  73.  
  74.  
  75.     PUBLIC    GetAspect
  76.  
  77. GetAspect    PROC    FAR    XAspect: DWORD, YAspect: DWORD
  78.  
  79.     MOV    AX,0EE05H
  80.     INT    10H
  81.     LES    DI,XAspect
  82.     MOV    ES:[DI],BX
  83.     LES    DI,YAspect
  84.     MOV    ES:[DI],CX
  85.     RET
  86.  
  87. GetAspect    ENDP
  88.  
  89.  
  90.     PUBLIC    PlotPoint
  91.  
  92. PlotPoint    PROC    FAR    X: WORD, Y: WORD
  93.  
  94.     MOV    AX,0EE06H
  95.     MOV    SI,X
  96.     MOV    DI,Y
  97.     INT    10H
  98.     RET
  99.  
  100. PlotPoint    ENDP
  101.  
  102.  
  103.     PUBLIC    PointColor
  104.  
  105. PointColor    PROC    FAR    X: WORD, Y: WORD, Color: DWORD
  106.  
  107.     MOV    AX,0EE07H
  108.     MOV    SI,X
  109.     MOV    DI,Y
  110.     INT    10H
  111.     LES    DI,Color
  112.     MOV    ES:[DI],AX
  113.     RET
  114.  
  115. PointColor    ENDP
  116.  
  117.  
  118.     PUBLIC    MoveTo
  119.  
  120. MoveTo        PROC    FAR    X: WORD, Y: WORD
  121.  
  122.     MOV    AX,0EE08H
  123.     MOV    SI,X
  124.     MOV    DI,Y
  125.     INT    10H
  126.     RET
  127.  
  128. MoveTo        ENDP
  129.  
  130.  
  131.     PUBLIC    MoveRel
  132.  
  133. MoveRel        PROC    FAR    X: WORD, Y: WORD
  134.  
  135.     MOV    AX,0EE09H
  136.     MOV    SI,X
  137.     MOV    DI,Y
  138.     INT    10H
  139.     RET
  140.  
  141. MoveRel        ENDP
  142.  
  143.  
  144.     PUBLIC    CurrentPoint
  145.  
  146. CurrentPoint    PROC    FAR    X: DWORD, Y: DWORD
  147.  
  148.     MOV    AX,0EE0AH
  149.     INT    10H
  150.     LES    DI,X
  151.     MOV    ES:[DI],BX
  152.     LES    DI,Y
  153.     MOV    ES:[DI],CX
  154.     RET
  155.  
  156. CurrentPoint    ENDP
  157.  
  158.  
  159.     PUBLIC    ExtLine
  160.  
  161. ExtLine        PROC    FAR    X1: WORD, Y1: WORD, X2: WORD, Y2: WORD
  162.  
  163.     MOV    AX,0EE0BH
  164.     MOV    BX,X1
  165.     MOV    CX,Y1
  166.     MOV    SI,X2
  167.     MOV    DI,Y2
  168.     INT    10H
  169.     RET
  170.  
  171. ExtLine        ENDP
  172.  
  173.  
  174.     PUBLIC    LineTo
  175.  
  176. LineTo        PROC    FAR    X: WORD, Y: WORD
  177.  
  178.     MOV    AX,0EE0CH
  179.     MOV    SI,X
  180.     MOV    DI,Y
  181.     INT    10H
  182.     RET
  183.  
  184. LineTo        ENDP
  185.  
  186.  
  187.     PUBLIC    LineRel
  188.  
  189. LineRel        PROC    FAR    X: WORD, Y: WORD
  190.  
  191.     MOV    AX,0EE0DH
  192.     MOV    SI,X
  193.     MOV    DI,Y
  194.     INT    10H
  195.     RET
  196.  
  197. LineRel        ENDP
  198.  
  199.  
  200.     PUBLIC    DrawBox
  201.  
  202. DrawBox        PROC    FAR    X1: WORD, Y1: WORD, X2: WORD, Y2: WORD, Color: WORD
  203.  
  204.     MOV    AX,0EE0EH
  205.     MOV    BX,X1
  206.     MOV    CX,Y1
  207.     MOV    SI,X2
  208.     MOV    DI,Y2
  209.     MOV    DX,Color
  210.     INT    10H
  211.     RET
  212.  
  213. DrawBox        ENDP
  214.  
  215.  
  216.     PUBLIC    ExtCircle
  217.  
  218. ExtCircle    PROC    FAR    X: WORD, Y: WORD, Radius: WORD
  219.  
  220.     MOV    AX,0EE0FH
  221.     MOV    SI,X
  222.     MOV    DI,Y
  223.     MOV    BX,Radius
  224.     INT    10H
  225.     RET
  226.  
  227. ExtCircle    ENDP
  228.  
  229.  
  230.     PUBLIC    ExtPaint
  231.  
  232. ExtPaint    PROC    FAR    X: WORD, Y: WORD, Fill: WORD, Boundry: WORD
  233.  
  234.     MOV    AX,0EE10H
  235.     MOV    SI,X
  236.     MOV    DI,Y
  237.     MOV    BX,Fill
  238.     MOV    CX,Boundry
  239.     INT    10H
  240.     RET
  241.  
  242. ExtPaint    ENDP
  243.  
  244.  
  245.     PUBLIC    FillBox
  246.  
  247. FillBox        PROC    FAR    X1: WORD, Y1: WORD, X2: WORD, Y2: WORD, Color: WORD
  248.  
  249.     MOV    AX,0EE11H
  250.     MOV    BX,X1
  251.     MOV    CX,Y1
  252.     MOV    SI,X2
  253.     MOV    DI,Y2
  254.     MOV    DX,Color
  255.     INT    10H
  256.     RET
  257.  
  258. FillBox        ENDP
  259.  
  260.  
  261.     PUBLIC    SetPalette
  262.  
  263. SetPalette    PROC    FAR    PalReg: WORD, Color: WORD
  264.  
  265.     MOV    AX,0EE12H
  266.     MOV    BX,PalReg
  267.     MOV    CX,Color
  268.     INT    10H
  269.     RET
  270.  
  271. SetPalette    ENDP
  272.  
  273.  
  274.     PUBLIC    PaletteUsing
  275.  
  276. PaletteUsing    PROC    FAR    Palette: DWORD
  277.  
  278.     USES    DS
  279.  
  280.     MOV    AX,0EE13H
  281.     LDS    DX,Palette
  282.     INT    10H
  283.     RET
  284.  
  285. PaletteUsing    ENDP
  286.  
  287.  
  288.     PUBLIC    ResetPalette
  289.  
  290. ResetPalette    PROC    FAR
  291.  
  292.     MOV    AX,0EE14H
  293.     INT    10H
  294.     RET
  295.  
  296. ResetPalette    ENDP
  297.  
  298.  
  299.     PUBLIC    ExtGet
  300.  
  301. ExtGet        PROC    FAR    X1: WORD, Y1: WORD, X2: WORD, Y2: WORD, Image: DWORD
  302.  
  303.     USES    DS
  304.  
  305.     MOV    AX,0EE15H
  306.     MOV    BX,X1
  307.     MOV    CX,Y1
  308.     MOV    SI,X2
  309.     MOV    DI,Y2
  310.     LDS    DX,Image
  311.     INT    10H
  312.     RET
  313.  
  314. ExtGet        ENDP
  315.  
  316.  
  317.     PUBLIC    ExtPut
  318.  
  319. ExtPut        PROC    FAR    X: WORD, Y: WORD, Image: DWORD, Action: WORD
  320.  
  321.     USES    DS
  322.  
  323.     MOV    AX,0EE16H
  324.     MOV    SI,X
  325.     MOV    DI,Y
  326.     MOV    BX,Action
  327.     LDS    DX,Image
  328.     INT    10H
  329.     RET
  330.  
  331. ExtPut        ENDP
  332.  
  333.  
  334.     PUBLIC    CursorAction
  335.  
  336. CursorAction    PROC    FAR    Action: WORD
  337.  
  338.     MOV    AX,0EE17H
  339.     MOV    BX,Action
  340.     INT    10H
  341.     RET
  342.  
  343. CursorAction    ENDP
  344.  
  345.  
  346.     PUBLIC    CursorStatus
  347.  
  348. CursorStatus    PROC    FAR    Status: DWORD, CursorSize: DWORD
  349.  
  350.     MOV    AX,0EE18H
  351.     INT    10H
  352.     LES    DI,Status
  353.     MOV    ES:[DI],BX
  354.     LES    DI,CursorSize
  355.     MOV    ES:[DI],CX
  356.     RET
  357.  
  358. CursorStatus    ENDP
  359.  
  360.  
  361.     PUBLIC    SetCursor
  362.  
  363. SetCursor    PROC    FAR    Row: WORD, Column: WORD
  364.  
  365.     MOV    AX,0EE19H
  366.     MOV    BX,Column
  367.     MOV    CX,Row
  368.     INT    10H
  369.     RET
  370.  
  371. SetCursor    ENDP
  372.  
  373.  
  374.     PUBLIC    GetCursor
  375.  
  376. GetCursor    PROC    FAR    Row: DWORD, Column: DWORD
  377.  
  378.     MOV    AX,0EE1AH
  379.     INT    10H
  380.     LES    DI,Row
  381.     MOV    ES:[DI],CX
  382.     LES    DI,Column
  383.     MOV    ES:[DI],BX
  384.     RET
  385.  
  386. GetCursor    ENDP
  387.  
  388.  
  389.     PUBLIC    PrintStringA
  390.  
  391. PrintStringA    PROC    FAR    Action: WORD, StrLen: WORD, String: DWORD
  392.  
  393.     USES    DS
  394.  
  395.     MOV    AX,0EE1BH
  396.     MOV    BX,Action
  397.     MOV    CX,StrLen
  398.     LDS    DX,String
  399.     INC    DX
  400.     INT    10H
  401.     RET
  402.  
  403. PrintStringA    ENDP
  404.  
  405.  
  406.     PUBLIC    Animate
  407.  
  408. Animate        PROC    FAR    X: WORD, Y: WORD, Speed: WORD, Image: DWORD
  409.  
  410.     USES    DS
  411.  
  412.     MOV    AX,0EE1CH
  413.     MOV    SI,X
  414.     MOV    DI,Y
  415.     MOV    CX,Speed
  416.     LDS    DX,Image
  417.     INT    10H
  418.     RET
  419.  
  420. Animate        ENDP
  421.  
  422.  
  423.     PUBLIC    PlotPointC
  424.  
  425. PlotPointC    PROC    FAR    X: WORD, Y: WORD, Color: WORD
  426.  
  427.     MOV    AX,0EE1DH
  428.     MOV    SI,X
  429.     MOV    DI,Y
  430.     MOV    DX,Color
  431.     INT    10H
  432.     RET
  433.  
  434. PlotPointC    ENDP
  435.  
  436.  
  437.     PUBLIC    ExtLineC
  438.  
  439. ExtLineC    PROC    FAR    X1: WORD, Y1: WORD, X2: WORD, Y2: WORD, Color: WORD
  440.  
  441.     MOV    AX,0EE1EH
  442.     MOV    BX,X1
  443.     MOV    CX,Y1
  444.     MOV    SI,X2
  445.     MOV    DI,Y2
  446.     MOV    DX,Color
  447.     INT    10H
  448.     RET
  449.  
  450. ExtLineC    ENDP
  451.  
  452.  
  453.     PUBLIC    LineToC
  454.  
  455. LineToC        PROC    FAR    X: WORD, Y: WORD, Color: WORD
  456.  
  457.     MOV    AX,0EE1FH
  458.     MOV    SI,X
  459.     MOV    DI,Y
  460.     MOV    DX,Color
  461.     INT    10H
  462.     RET
  463.  
  464. LineToC        ENDP
  465.  
  466.  
  467.     PUBLIC    LineRelC
  468.  
  469. LineRelC    PROC    FAR    X: WORD, Y: WORD, Color: WORD
  470.  
  471.     MOV    AX,0EE20H
  472.     MOV    SI,X
  473.     MOV    DI,Y
  474.     MOV    DX,Color
  475.     INT    10H
  476.     RET
  477.  
  478. LineRelC    ENDP
  479.  
  480.  
  481.     PUBLIC    ExtCircleC
  482.  
  483. ExtCircleC    PROC    FAR    X: WORD, Y: WORD, Radius: WORD, Color: WORD
  484.  
  485.     MOV    AX,0EE21H
  486.     MOV    SI,X
  487.     MOV    DI,Y
  488.     MOV    BX,Radius
  489.     MOV    DX,Color
  490.     INT    10H
  491.     RET
  492.  
  493. ExtCircleC    ENDP
  494.  
  495.  
  496.     PUBLIC    DrawBoxC
  497.  
  498. DrawBoxC    PROC    FAR    X1: WORD, Y1: WORD, X2: WORD, Y2: WORD
  499.  
  500.     MOV    AX,0EE22H
  501.     MOV    BX,X1
  502.     MOV    CX,Y1
  503.     MOV    SI,X2
  504.     MOV    DI,Y2
  505.     INT    10H
  506.     RET
  507.  
  508. DrawBoxC    ENDP
  509.  
  510.  
  511.     PUBLIC    FillBoxC
  512.  
  513. FillBoxC    PROC    FAR    X1: WORD, Y1: WORD, X2: WORD, Y2: WORD
  514.  
  515.     MOV    AX,0EE23H
  516.     MOV    BX,X1
  517.     MOV    CX,Y1
  518.     MOV    SI,X2
  519.     MOV    DI,Y2
  520.     INT    10H
  521.     RET
  522.  
  523. FillBoxC    ENDP
  524.  
  525.  
  526.     PUBLIC    SetSystem
  527.  
  528. SetSystem    PROC    FAR    Action: WORD
  529.  
  530.     MOV    AX,0EE80H
  531.     MOV    BX,Action
  532.     INT    10H
  533.     RET
  534.  
  535. SetSystem    ENDP
  536.  
  537.  
  538.     PUBLIC    GetSystem
  539.  
  540. GetSystem    PROC    FAR    Action: WORD
  541.  
  542.     MOV    AX,0EE80H
  543.     MOV    BX,Action
  544.     INT    10H
  545.     RET
  546.  
  547. GetSystem    ENDP
  548.  
  549.  
  550.     PUBLIC    ExtSound
  551.  
  552. ExtSound    PROC    FAR    Frequency: WORD, Duration: WORD, Volume: WORD, Channel: WORD
  553.  
  554.     MOV    AX,0EE81H
  555.     MOV    BX,Volume
  556.     MOV    CX,Channel
  557.     MOV    SI,Frequency
  558.     MOV    DI,Duration
  559.     INT    10H
  560.     RET
  561.  
  562. ExtSound    ENDP
  563.  
  564.  
  565.     PUBLIC    Noise
  566.  
  567. Noise        PROC    FAR    NoiseType: WORD, Volume: WORD, Duration: WORD
  568.  
  569.     MOV    AX,0EE82H
  570.     MOV    BX,NoiseType
  571.     MOV    CX,Volume
  572.     MOV    DX,Duration
  573.     INT    10H
  574.     RET
  575.  
  576. Noise        ENDP
  577.  
  578.     PUBLIC    Pause
  579.  
  580. Pause        PROC    FAR    Duration: WORD
  581.  
  582.     MOV    AX,0EE83H
  583.     MOV    BX,Duration
  584.     INT    10H
  585.     RET
  586.  
  587. Pause        ENDP
  588.  
  589.  
  590.     PUBLIC    SpeakerOff
  591.  
  592. SpeakerOff    PROC    FAR
  593.  
  594.     MOV    AX,8002H
  595.     INT    1AH
  596.     RET
  597.  
  598. SpeakerOff    ENDP
  599.  
  600.  
  601.     PUBLIC    SpeakerOn
  602.  
  603. SpeakerOn    PROC    FAR
  604.  
  605.     MOV    AL,9FH
  606.     OUT    0C0H,AL
  607.     MOV    AL,0BFH
  608.     OUT    0C0H,AL
  609.     MOV    AL,0DFH
  610.     OUT    0C0H,AL
  611.     MOV    AX,8003H
  612.     INT    1AH
  613.     RET
  614.  
  615. SpeakerOn    ENDP
  616.  
  617.  
  618.     PUBLIC    XorPoint
  619.  
  620. XorPoint    PROC    X: WORD, Y: WORD
  621.  
  622.     MOV    AX,0EE24H
  623.     MOV    SI,X
  624.     MOV    DI,Y
  625.     INT    10H
  626.     RET
  627.  
  628. XorPoint    ENDP
  629.  
  630.  
  631.     PUBLIC    XorPointC
  632.  
  633. XorPointC    PROC    X: WORD, Y: WORD, Color: WORD
  634.  
  635.     MOV    AX,0EE25H
  636.     MOV    SI,X
  637.     MOV    DI,Y
  638.     MOV    DX,Color
  639.     INT    10H
  640.     RET
  641.  
  642. XorPointC    ENDP
  643.  
  644.  
  645.     PUBLIC    XorLine
  646.  
  647. XorLine        PROC    X1: WORD, Y1: WORD, X2: WORD, Y2: WORD
  648.  
  649.     MOV    AX,0EE26H
  650.     MOV    BX,X1
  651.     MOV    CX,Y1
  652.     MOV    SI,X2
  653.     MOV    DI,Y2
  654.     INT    10H
  655.     RET
  656.  
  657. XorLine        ENDP
  658.  
  659.  
  660.     PUBLIC    XorLineC
  661.  
  662. XorLineC    PROC    X1: WORD, Y1: WORD, X2: WORD, Y2: WORD, Color: WORD
  663.  
  664.     MOV    AX,0EE27H
  665.     MOV    BX,X1
  666.     MOV    CX,Y1
  667.     MOV    SI,X2
  668.     MOV    DI,Y2
  669.     MOV    DX,Color
  670.     INT    10H
  671.     RET
  672.  
  673. XorLineC    ENDP
  674.  
  675.  
  676.     PUBLIC    XorLineTo
  677.  
  678. XorLineTo    PROC    X: WORD, Y: WORD
  679.  
  680.     MOV    AX,0EE28H
  681.     MOV    SI,X
  682.     MOV    DI,Y
  683.     INT    10H
  684.     RET
  685.  
  686. XorLineTo    ENDP
  687.  
  688.  
  689.     PUBLIC    XorLineToC
  690.  
  691. XorLineToC    PROC    X: WORD, Y: WORD, Color: WORD
  692.  
  693.     MOV    AX,0EE29H
  694.     MOV    SI,X
  695.     MOV    DI,Y
  696.     MOV    DX,Color
  697.     INT    10H
  698.     RET
  699.  
  700. XorLineToC    ENDP
  701.  
  702.  
  703.     PUBLIC    XorLineRel
  704.  
  705. XorLineRel    PROC    X: WORD, Y: WORD
  706.  
  707.     MOV    AX,0EE2AH
  708.     MOV    SI,X
  709.     MOV    DI,Y
  710.     INT    10H
  711.     RET
  712.  
  713. XorLineRel    ENDP
  714.  
  715.  
  716.     PUBLIC    XorLineRelC
  717.  
  718. XorLineRelC    PROC    X: WORD, Y: WORD, Color: WORD
  719.  
  720.     MOV    AX,0EE2BH
  721.     MOV    SI,X
  722.     MOV    DI,Y
  723.     MOV    DX,Color
  724.     INT    10H
  725.     RET
  726.  
  727. XorLineRelC    ENDP
  728.  
  729.  
  730.     PUBLIC    XorDrawBox
  731.  
  732. XorDrawBox    PROC    X1: WORD, Y1: WORD, X2: WORD, Y2: WORD, Color: WORD
  733.  
  734.     MOV    AX,0EE2CH
  735.     MOV    BX,X1
  736.     MOV    CX,Y1
  737.     MOV    SI,X2
  738.     MOV    DI,Y2
  739.     MOV    DX,Color
  740.     INT    10H
  741.     RET
  742.  
  743. XorDrawBox    ENDP
  744.  
  745.  
  746.     PUBLIC    XorDrawBoxC
  747.  
  748. XorDrawBoxC    PROC    X1: WORD, Y1: WORD, X2: WORD, Y2: WORD
  749.  
  750.     MOV    AX,0EE2DH
  751.     MOV    BX,X1
  752.     MOV    CX,Y1
  753.     MOV    SI,X2
  754.     MOV    DI,Y2
  755.     INT    10H
  756.     RET
  757.  
  758. XorDrawBoxC    ENDP
  759.  
  760.  
  761.     PUBLIC    XorFillBox
  762.  
  763. XorFillBox    PROC    X1: WORD, Y1: WORD, X2: WORD, Y2: WORD, Color: WORD
  764.  
  765.     MOV    AX,0EE2EH
  766.     MOV    BX,X1
  767.     MOV    CX,Y1
  768.     MOV    SI,X2
  769.     MOV    DI,Y2
  770.     MOV    DX,Color
  771.     INT    10H
  772.     RET
  773.  
  774. XorFillBox    ENDP
  775.  
  776.  
  777.     PUBLIC    XorFillBoxC
  778.  
  779. XorFillBoxC    PROC    X1: WORD, Y1: WORD, X2: WORD, Y2: WORD
  780.  
  781.     MOV    AX,0EE2FH
  782.     MOV    BX,X1
  783.     MOV    CX,Y1
  784.     MOV    SI,X2
  785.     MOV    DI,Y2
  786.     INT    10H
  787.     RET
  788.  
  789. XorFillBoxC    ENDP
  790.  
  791.  
  792.     PUBLIC    XorCircle
  793.  
  794. XorCircle    PROC    X: WORD, Y: WORD, Radius: WORD
  795.  
  796.     MOV    AX,0EE30H
  797.     MOV    SI,X
  798.     MOV    DI,Y
  799.     MOV    BX,Radius
  800.     INT    10H
  801.     RET
  802.  
  803. XorCircle    ENDP
  804.  
  805.  
  806.     PUBLIC    XorCircleC
  807.  
  808. XorCircleC    PROC    X: WORD, Y: WORD, Radius: WORD, Color: WORD
  809.  
  810.     MOV    AX,0EE31H
  811.     MOV    SI,X
  812.     MOV    DI,Y
  813.     MOV    BX,Radius
  814.     MOV    DX,Color
  815.     INT    10H
  816.     RET
  817.  
  818. XorCircleC    ENDP
  819.  
  820.  
  821.     PUBLIC    Ellipse
  822.  
  823. Ellipse        PROC    XC: WORD, YC: WORD, A: WORD, B:WORD
  824.  
  825.     MOV    AX,0EE32H
  826.     MOV    SI,XC
  827.     MOV    DI,YC
  828.     MOV    BX,A
  829.     MOV    CX,B
  830.     INT    10H
  831.     RET
  832.  
  833. Ellipse        ENDP
  834.  
  835.  
  836.     PUBLIC    EllipseC
  837.  
  838. EllipseC    PROC    XC: WORD, YC: WORD, A: WORD, B: WORD, Color: WORD
  839.  
  840.     MOV    AX,0EE33H
  841.     MOV    SI,XC
  842.     MOV    DI,YC
  843.     MOV    BX,A
  844.     MOV    CX,B
  845.     MOV    DX,Color
  846.     INT    10H
  847.     RET
  848.  
  849. EllipseC    ENDP
  850.  
  851.  
  852.     PUBLIC    XorEllipse
  853.  
  854. XorEllipse    PROC    XC: WORD, YC: WORD, A: WORD, B: WORD
  855.  
  856.     MOV    AX,0EE34H
  857.     MOV    SI,XC
  858.     MOV    DI,YC
  859.     MOV    BX,A
  860.     MOV    CX,B
  861.     INT    10H
  862.     RET
  863.  
  864. XorEllipse    ENDP
  865.  
  866.  
  867.     PUBLIC    XorEllipseC
  868.  
  869. XorEllipseC    PROC    XC: WORD, YC: WORD, A: WORD, B: WORD, Color: WORD
  870.  
  871.     MOV    AX,0EE35H
  872.     MOV    SI,XC
  873.     MOV    DI,YC
  874.     MOV    BX,A
  875.     MOV    CX,B
  876.     MOV    DX,Color
  877.     INT    10H
  878.     RET
  879.  
  880. XorEllipseC    ENDP
  881.  
  882.  
  883.     PUBLIC    SetView
  884.  
  885. SetView        PROC    MinX: WORD, MinY: WORD, MaxX: WORD, MaxY: WORD
  886.  
  887.     MOV    AX,0EE36H
  888.     MOV    BX,MinX
  889.     MOV    CX,MinY
  890.     MOV    SI,MaxX
  891.     MOV    DI,MaxY
  892.     INT    10H
  893.     RET
  894.  
  895. SetView        ENDP
  896.  
  897.  
  898.     PUBLIC    GetView
  899.  
  900. GetView        PROC    MinX: DWORD, MinY: DWORD, MaxX: DWORD, MaxY: DWORD
  901.  
  902.     MOV    AX,0EE37H
  903.     INT    10H
  904.     MOV    AX,DI
  905.     LES    DI,MinX
  906.     MOV    ES:[DI],BX
  907.     LES    DI,MinY
  908.     MOV    ES:[DI],CX
  909.     LES    DI,MaxX
  910.     MOV    ES:[DI],SI
  911.     LES    DI,MaxY
  912.     MOV    ES:[DI],AX
  913.     RET
  914.  
  915. GetView        ENDP
  916.  
  917.  
  918.     PUBLIC    ResetView
  919.  
  920. ResetView    PROC
  921.  
  922.     MOV    AX,0EE38H
  923.     INT    10H
  924.     RET
  925.  
  926. ResetView    ENDP
  927.  
  928.  
  929.     PUBLIC    GetScreen
  930.  
  931. GetScreen    PROC    Image: DWORD
  932.  
  933.     USES    DS
  934.  
  935.     LDS    DX,Image
  936.     MOV    AX,0EE39H
  937.     INT    10H
  938.     RET
  939.  
  940. GetScreen    ENDP
  941.  
  942.  
  943.     PUBLIC    PutScreen
  944.  
  945. PutScreen    PROC    Image: DWORD
  946.  
  947.     USES    DS
  948.  
  949.     LDS    DX,Image
  950.     MOV    AX,0EE3AH
  951.     INT    10H
  952.     RET
  953.  
  954. PutScreen    ENDP
  955.  
  956.  
  957.     PUBLIC    SetDisplayPage
  958.  
  959. SetDisplayPage    PROC    DPage: WORD
  960.  
  961.     MOV    AX,0EE3BH
  962.     MOV    BX,DPage
  963.     INT    10H
  964.     RET
  965.  
  966. SetDisplayPage    ENDP
  967.  
  968.  
  969.     PUBLIC    GetDisplayPage
  970.  
  971. GetDisplayPage    PROC    DPage: DWORD
  972.  
  973.     MOV    AX,0EE3CH
  974.     INT    10H
  975.     LES    DI,DPage
  976.     MOV    ES:[DI],BX
  977.     RET
  978.  
  979. GetDisplayPage    ENDP
  980.  
  981.  
  982.     PUBLIC    SetActivePage
  983.  
  984. SetActivePage    PROC    APage: WORD
  985.  
  986.     MOV    AX,0EE3DH
  987.     MOV    BX,APage
  988.     INT    10H
  989.     RET
  990.  
  991. SetActivePage    ENDP
  992.  
  993.  
  994.     PUBLIC    GetActivePage
  995.  
  996. GetActivePage    PROC    APage: DWORD
  997.  
  998.     MOV    AX,0EE3EH
  999.     INT    10H
  1000.     LES    DI,APage
  1001.     MOV    ES:[DI],BX
  1002.     RET
  1003.  
  1004. GetActivePage    ENDP
  1005.  
  1006.  
  1007.     PUBLIC    PageCopy
  1008.  
  1009. PageCopy    PROC    Source: WORD, Destination: WORD
  1010.  
  1011.     MOV    AX,0EE3FH
  1012.     MOV    SI,Source
  1013.     MOV    DI,Destination
  1014.     INT    10H
  1015.     RET
  1016.  
  1017. PageCopy    ENDP
  1018.  
  1019.  
  1020.     PUBLIC    FastTimer
  1021.  
  1022. FastTimer    PROC    Speed: WORD
  1023.  
  1024.     MOV    AX,0EE84H
  1025.     MOV    BX,Speed
  1026.     INT    10H
  1027.     RET
  1028.  
  1029. FastTimer    ENDP
  1030.  
  1031.  
  1032.     PUBLIC    ResetTimer
  1033.  
  1034. ResetTimer    PROC
  1035.  
  1036.     MOV    AX,0EE85H
  1037.     INT    10H
  1038.     RET
  1039.  
  1040. ResetTimer    ENDP
  1041.  
  1042.  
  1043.     PUBLIC    GetTimer
  1044.  
  1045. GetTimer    PROC    Timer: DWORD
  1046.  
  1047.     MOV    AX,0EE86H
  1048.     INT    10H
  1049.     LES    DI,Timer
  1050.     MOV    ES:[DI],BX
  1051.     RET
  1052.  
  1053. GetTimer    ENDP
  1054.  
  1055.     END
  1056.